Bulk Enrollment API Calls

Create Bulk Enrollment Profile by Uploading CSV File

This call adds a new Bulk Enrollment Profile by uploading a CSV file with device details.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

POST

Request URI

/api/v1/bulkenrollment/profile/upload

Request Parameters

Parameter

Argument Type

Description

Example Value

csv-data

Request body

Required

Data Type: string

CSV file to be uploaded

 

name

Request body

Required

Data Type: string

Name of the CSV file to be uploaded.

device_bulk_enrollment.csv

description

Request Body

Required

Data Type: string

The bulk upload description

 

withoutToken

Request Body

Required

Data Type: Boolean, true or false

True

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/upload/ device_bulk_enrollment.csv

Example Response

{

"errors": null,

"result": {

"csvId": 3,

"tenantId": 42000,

"enrollmentToken": "xxxxxx",

"tokenExpiry": <abcdef>,

"userName": null,

"userEmailAddress": null,

"userId": null,

"serverUrl": "https://[Ivanti Neurons for MDM]",

"errorMessage": null,

"deviceCount": null,

"provisioningConfig": null

}

}

List Bulk Enrollment Profiles

This call lists all the bulk enrollment profiles.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

/api/v1/bulkenrollment/profile

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Id of the bulk enrollment profile.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile?q=&rows=20&start=0&sortFields%5B0%5D.name=csvName&sortFields%5B0%5D.order=ASC'

Example Response

{

"errors": null,

"result": {

"searchResults": [

{

"csvId": 10,

"csvName": "a1",

"description": null,

"modifiedAt": 1712505201621,

"devicesCount": 0,

"errorMessage": null,

"userName": null,

"userEmailAddress": null,

"withoutToken": true,

"userId": 0

},

{

"csvId": 9,

"csvName": "a4",

"description": null,

"modifiedAt": 1709790700477,

"devicesCount": 0,

"errorMessage": null,

"userName": null,

"userEmailAddress": null,

"withoutToken": true,

"userId": 0

}

],

"totalCount": 2,

"offset": 0,

"limit": 20

}

}

Get Bulk Enrollment Profile Detail by profile ID

This call lists the bulk enrollment profile details by their profile ID.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

api/v1/bulkenrollment/profile/id/devices?q=&rows=20&start=0&sortFields%5B0%5D.name=imei&sortFields%5B0%5D.order=ASC&nav=true

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Profile ID of the bulk enrollment profile to be updated.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3/devices?q=&rows=5&start=0&sortFields%5B0%5D.name=imei&sortFields%5B0%5D.order=ASC&nav=true

Example Request Body

{

"errors": null,

"result": {

"searchResults": [

{

"id": 109,

"imei": "3575370848772300",

"tenantId": null,

"manufacturer": "Samsung",

"serialNumber": "RZ8K314XFY75",

"state": "PENDING_REG",

"customAttributes": null,

"userName": null

},

{

"id": 124,

"imei": "35753708487723000",

"tenantId": null,

"manufacturer": "Samsung",

"serialNumber": "RZ8K314XFY746",

"state": "PENDING_REG",

"customAttributes": null,

"userName": null

},

{

"id": 147,

"imei": "35753708487723000",

"tenantId": null,

"manufacturer": "Samsung",

"serialNumber": "RZ8K314XFY772",

"state": "PENDING_REG",

"customAttributes": null,

"userName": null

},

{

"id": 138,

"imei": "35753708487723000",

"tenantId": null,

"manufacturer": "Samsung",

"serialNumber": "RZ8K314XFY790",

"state": "PENDING_REG",

"customAttributes": null,

"userName": null

},

{

"id": 128,

"imei": "35753708487723000",

"tenantId": null,

"manufacturer": "Samsung",

"serialNumber": "RZ8K314XFY722",

"state": "PENDING_REG",

"customAttributes": null,

"userName": null

}

],

"totalCount": 50,

"offset": 0,

"limit": 5

}

}

Update Bulk Enrollment Profile

This call updates the bulk enrollment profile details.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

PUT

Request URI

/api/v1/bulkenrollment/profile

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Path

Required

Data Type: number

ID of the bulk enrollment profile to be updated.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile

Download Bulk Enrollment Profile by profile ID

This call downloads the bulk enrollment profile details by using profile ID.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

/api/v1/bulkenrollment/profile/id/download

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request body

Required

Data Type: number

ID of the bulk enrollment profile to be downloaded.

1

Example Request

Example Request URL

https:// [Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3/download

Delete Bulk Enrollment Profile by profile ID

This call deletes a Bulk Enrollment Profile by using profileId.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

DELETE

Request URI

api/v1/bulkenrollment/profile/id

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

ID of the Bulk enrollment profile to be deleted.

1

Example Request

Example Request URL

https:// [Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/1

Search Devices in Bulk Enrollment

This call searches for devices in a Bulk Enrollment.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

api/v1/bulkenrollment/profile/id/devices?q=2476b5y210000cse&rows=20&start=0&sortFields%5B0%5D.name=imei&sortFields%5B0%5D.order=ASC&nav=true

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

ID of the bulk enrollment profile from which the device has to be searched.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3/devices?q=RZ8K314XFY7316&rows=20&start=0&sortFields%5B0%5D.name=imei&sortFields%5B0%5D.order=ASC&nav=true

Example Response    

       
				

{

"errors": null,

"result": {

"searchResults": [

{

"id": 101,

"imei": "3575370xxxxxxxx",

"tenantId": null,

"manufacturer": "Samsung",

"serialNumber": "RAATYPXFY3399",

"state": "PENDING_REG",

"customAttributes": null,

"userName": null

}

],

"totalCount": 1,

"offset": 0,

"limit": 20

}

}

Generate QR Code for the Bulk Enrollment Profile

This call generates a QR code for a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

api/v1/bulkenrollment/profile/id/qrcode/generate

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

ID of the Bulk Enrollment Profile for which the QR code needs to be generated.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/1/qrcode/generate

Example Response

{

"errors": null,

"result": "{\"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION\":\"https://<hostname>/cloud-android/current/mi-Go-latest.apk\",\"android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE\":{\"server\":\"<hostname>\",\"qrCode\":true,\"token\":\"jtstg43j\"},\"android.app.extra.PROVISIONING_LOCALE\":\"en_US\",\"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM\":\"H2IxQHNSEQDujQ7aEQUvl43Nik_w9AGHExJhhWELE\",\"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED\":true,\"android.app.extra.PROVISIONING_TIME_ZONE\":\"America/Los_Angeles\",\"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME\":\"com.mi.ae.android/com.mi.poris.manager.device.AndroidDeviceAdminReceiver\"}"

}

Get Bulk Enrollment Configuration by Bulk Profile ID

This call gets the bulk enrollment configuration by using bulk profile ID.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

api/v1/bulkenrollment/profile/id

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Profile ID of the bulk enrollment profile for which the bulk enrollment configuration must be fetched.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/1

Example Response

{

"errors": null,

"result": {

"csvId": 3,

"tenantId": 42000,

"enrollmentToken": "ttzzel34",

"tokenExpiry": 1700215169002,

"userName": null,

"userEmailAddress": null,

"userId": null,

"serverUrl": "https://<hostname>",

"errorMessage": null,

"deviceCount": 50,

"provisioningConfig": null

}

}

Modify Bulk Enrollment Configuration for a Bulk Profile by Bulk Profile ID

This call updates the bulk enrollment configuration of the bulk enrollment profile by using profile ID.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

PUT

Request URI

api/v1/bulkenrollment/profile/id/qrcode

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Profile ID of the bulk enrollment profile for which the bulk enrollment configuration needs to be modified.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/1/qrcode

Add more devices to a Bulk Enrollment Profile

This call adds more devices to a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

POST

Request URI

api/v1/bulkenrollment/profile/id

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Path

ID of the Bulk enrollment profile to which more devices must be added.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3

Example Request Body

{

"devices": [

{

"imei": "045923498",

"manufacturer": "Alcatel Lucent inc",

"serialNumber": "987634832832",

"customAttributes": "isBulk=false;numkey=655734"

}

]

}

Example Response

{

"errors": null,

"result": 1

}

Edit Device Record in a Bulk Enrollment Profile

This call edits a device record in a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

PUT

Request URI

api/v1/bulkenrollment/profile/id/devices

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Device ID of the device to be updated to the bulk enrollment profile.

1

devices

Request body

Required

Data Type: string

Details of the device to be edited.

 

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/1/devices

Delete Device Records from a Bulk Enrollment Profile

This call deletes device records from a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

DELETE

Request URI

api/v1/bulkenrollment/profile/id/devices

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Profile ID of the bulk enrollment profile which has the device to be deleted.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/1/devices?ids=655734

Example Request Body

{

"devices": [

{

"imei": "045923498",

"manufacturer": "Alcatel Lucent inc",

"serialNumber": "986634832832",

"customAttributes": "isBulk=false;numkey=655734"

}

]

}

Refresh Token for a Bulk Enrollment Profile

This call refreshes the token of a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

PUT

Request URI

api/v1/bulkenrollment/profile/id/refreshtoken

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Bulk Enrollment profile ID that needs to be refreshed.

 

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3/refreshtoken

Example Response

{

"errors": null,

"result": {

"enrollmentToken": "su8eubjg3",

"tokenExpiry": 1700224007451

}

}

Update Token Expiry for Bulk profile

This call refreshes the token for a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

PUT

Request URI

api/v1/bulkenrollment/profile/id?action=refreshToken

Request Parameters

Parameter

Argument Type

Description

Sample Value

Id

Request Body

Required

Data Type: number

Profile ID of the bulk enrollment profile for which the token expiry must be updated.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3?action=refreshToken

Example Request Body

{

"userId": "", // if userId is not empty then it will update the associated user to the csv

"tokenExpiry": 1701094674198

}

Example Response

{

"errors": null,

"result": 52

}

Change associated User for a bulk profile

This call changes the associated user for a bulk enrollment profile.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

PUT

Request URI

api/v1/bulkenrollment/profile/id?action=addUser

Request Parameters

Parameter

Argument Type

Description

Sample Value

Id

Request Body

Required

Data Type: number

ID of the bulk enrollment profile for which the associated user should be updated.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3?action=addUser

Example Request Body

{

"userId": 10052, // We can get userId from the Search User api response

"tokenExpiry": 1701094674198

}

Search User

This call searches for a particular user.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

POST

Request URI

api/v1/account/search

Request Parameters

Parameter

Argument Type

Description

Sample Value

Id

Request Body

Required

Data Type: number

Bulk enrollment account from which the user must be searched for.

 

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/account/search

Example Response

{

"errors": null,

"result": {

"totalCount": 1,

"searchResults": [

{

"id": 10052,

"createdAt": 1699432428392,

"firstName": "abdved",

"lastName": "vedB",

"ldapEntryState": "NA",

"uid": "[email protected]",

"emailAddress": "[email protected]",

"accountSource": "LOCAL",

"inviteState": "None",

"inviteResendCount": 0,

"accountType": "USER",

"enabled": true,

"locked": false,

"superUser": false,

"termsAccepted": false,

"bypassSaml": false,

"passwordExpiresAt": 1707208430803,

"accountSettings": "null",

"mutable": false,

"loginFailureCount": 0,

"loginSuccessAt": 1699616086483,

"passwordHistory": "{}",

"androidWorkUserStatus": "NONE",

"androidWorkRetryCount": 0,

"androidWorkDeviceAccountEnabled": false,

"idpUserDeleted": false,

"passwordNeverExpire": false,

"registrationPin": {

"expiresAt": null,

"pin": null,

"used": false,

"ppkgPinStatus": "NOT_GENERATED"

},

"groups": [

"All Users"

],

"deviceCount": 0

}

],

"offset": 0,

"limit": 10,

"queryTime": 8,

"facetedResults": {

"PASSWORDEXPIRATION": {

"false": 1,

"true": 0

},

"ACCOUNTSOURCE": {

"LDAP": 0,

"AAD": 0,

"ROSTER": 0,

"SALESFORCE": 0,

"SCIM_AAD": 0,

"LOCAL": 1,

"SCIM_OKTA": 0

},

"TERMSACCEPTED": {

"false": 1,

"true": 0

},

"INVITESTATE": {

"Completed": 0,

"Expired": 0,

"None": 1,

"Pending": 0

},

"ACCOUNTTYPE": {

"SUPPORT": 0,

"API": 0,

"PARTNER_USER": 0,

"USER": 1

},

"ANDROIDWORKSTATUS": {

"ENABLED": 0,

"ERROR": 0,

"NONE": 1,

"DELETED": 0

},

"SYNC": {

"na": 1,

"DIRECT_SYNC": 0,

"INDIRECT_SYNC": 0,

"NO_SYNC": 0

},

"ACCOUNTGROUP": {

"All Users": 1

}

},

"totalUnfilteredResultCount": 6

}

}

Get Basic Info for Bulk Enrollment Profile by ID

This call gets basic info for bulk enrollment profile by profile ID.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

GET

Request URI

api/v1/bulkenrollment/profile/id/info

Request Parameters

Parameter

Argument Type

Description

Sample Value

Id

Request Body

Required

Data Type: number

Profile ID to be used to get basic info about the bulk enrollment profile.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/3/info

Example Response

{

"errors": null,

"result": {

"csvName": "apiTestcsvUpdate",

"enrollmentToken": "su8eubjg3",

"tokenExpiry": 1701094674198,

"deviceStateToCount": {

"TOTAL": 51,

"PENDING_REG": 51

}

}

}

Add More Devices from a CSV File

This call adds more devices to a bulk enrollment profile from a CSV file.

Authentication

This call requires Tenant Admin credentials.

HTTP Method

POST

Request URI

api/v1/bulkenrollment/profile/id/uploadRequest

Request Parameters

Parameter

Argument Type

Description

Example Value

id

Request Body

Required

Data Type: number

Profile ID to be used to get basic info about the bulk enrollment profile.

1

Example Request

Example Request URL

https://[Ivanti Neurons for MDM]/api/v1/bulkenrollment/profile/9/uploadRequest

Example Response

{

"errors":null,

"result":true

}